import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

const Login = () => import('../views/login/Login')
const Home = () => import('../views/home/Home')
const WelCome = () => import('../views/home/childComps/WelCome.vue')
const Users = () => import('../components/user/Users.vue')
const Rights = () => import('../components/power/Rights.vue')
const Roles = () => import('../components/power/Roles.vue')
const Cate = () => import('../components/goods/Cate.vue')
const Params = () => import('../components/goods/Params.vue')
const List = () => import('../components/goods/List.vue')
const Add = () => import('../components/goods/Add.vue')
const Order = () => import('../components/order/Order.vue')
const Report = () => import('../components/report/Report.vue')

const routes = [{
    path: '',
    redirect: '/login'
  },
  {
    path: '/login',
    component: Login
  },
  {
    path: '/home',
    component: Home,
    redirect: '/welcome',
    children: [{
      path: '/welcome',
      component: WelCome
    },{
      path: '/users',
      component: Users
    },{
      path: '/rights',
      component: Rights
    },{
      path: '/roles',
      component: Roles
    },{
      path: '/categories',
      component: Cate
    },{
      path: '/params',
      component: Params
    },{
      path: '/goods',
      component: List
    },{
      path: '/goods/add',
      component: Add
    },{
      path: '/orders',
      component: Order
    },{
      path: '/reports',
      component: Report
    }]
  }
]

const router = new VueRouter({
  routes,
})

//路由导航守卫 
router.beforeEach((to, from, next) => {
  if (to.path === '/login') return next()
  //获取页面的token
  const tokenStr = window.sessionStorage.getItem('token')
  //判断是否有token 有的话直接放行   没有就跳转到登录页面
  if (tokenStr) {
    next()
  } else {
    return next('/login')
  }
})

export default router
